◆cvsupitでportsを最新に更新

ここでは、portsを使用することによるportsコレクションのバージョンアップを説明したいと思います。

[net/cvsupit]を使用することにより、非常に簡単に最新portsへの更新が行えます。

意外に説明されてないんですよね…


◆cvsupをインストール(cvs-without-gui)

FreBSDの4.8を使用しているのであれば、cvsupitのportsが用意されています。

Server# cd /usr/ports/net/cvsupit
ここから[make install]すればいいだけなのですが…実は、少し注意点があります。

Server# make install
(中略)
*****************************************************
* To build CVSup without X11 (and without the GUI),        *
* use the "net/cvsup-without-gui" port.                *
*****************************************************

そのためには依存関係である「CVSup」をインストールする必要が出てきて、
[/usr/ports/net/cvsup]より自動的にインストールを始めます。

この「csvup」にはX-Windowに依存するソフトでもあり、
X-Windowシステムをインストールしていない場合、
このまま放置しておくと、とんでもない容量をインストールし始めます…(汗)。

そこでX-windowを使用していないのであれば、
/usr/ports/net/cvsup-without-gui]をインストールしたらいい、と親切に教えてくれます。


なので、一旦ここは[CTRL]+[C]で強制終了をかけて停止します。
そして大人しく忠告に従って、まず[cvsup-without-gui]のソフトのインストールをします。
Server# cd /usr/ports/net/cvsup-without-gui
Server# make install
と実行します。

いろんな依存関係ファイルも合わせてダウンロードされてインストールされていきます。

終了するまで、おとなしく待ちましょう。終了したら[make clean]を忘れずに。


そして今度こそcvsupitの実行です。
Server# cd /usr/ports/net/cvsupit
Server# make install

インストールは一瞬で終了して、その代わり、システムメニューが表示されたと思います。

cvsupitというのは、cvsupの初期設定を行うユーティリティです。
cvsupit自体はそのための単なるシェルスクリプトだったりします。


◆cvsupitで選択する項目
このcvsupitを使用すると、実に様々なソースの更新が簡単に出来ます。

新しいバージョンのFreeBSDそのものや、
バージョン4の最終安定版のソースで取ってきたりもできますが…
それはまたの機会にします。

ここでは、何もダウンロードしませんので、
一番下の「None」を選択します。


次に「Would you like to track the FreeBSD ports collection?」と聞かれるので「Yes」です。
何はともあれ、ここで「Yes」を選択しないと話が始まりませんので…(汗)。


「Would you like to track the FreeBSD doc sources?」は「No」でいいでしょう。

「Base directory for src, ports and docs subdirs?」と使用する場所を聞かれるので、
ディレクトリは「/usr」のまま「OK」を選択します

ここで「/usr」を指定しないと、
最初にここで指定したディレクトリに新たに作成された[ports]に全てのportsを取って来ます。
これを変更するくらいなら、まず最初に最新portsアーカイブを取って来た方が効率はいいです(汗)。


次はどこのFTPサーバーからデータを取るのか聞かれるので、
ここでは少し下のほうにある「cvsup.jp.FreeBSD.org」…日本のサーバーを選択して決定。

「Do you wish to run the CVSup update now?」今すぐ実行するかどうか聞いてくるので「Yes」。

最後に「Do you want to use compression (56K or slower, yes)?」
モデムやそれ以下の回線の場合であれば、圧縮してデータを送ったほうが効率がいいので、
回線が56k以下かどうか聞いてきます。ここで「No」を選択です。


これで「ports」のみの更新が開始します。
この時、実際にすでに存在している(はずの)[/usr/ports」のデータと比較して、
更新されているportsのみを取って来ます。

初回は結構な時間がかかるので、おとなしく終了するのを待ちましょう。

そして、「OK」が表示されたらエンターで進みます。


◆次からはcvsupを使用する

すると、画面にメッセージが表示されます。

そこに表示されている内容ですが

まず今後同じ事…つまりports集のみのバージョンアップをしたいのであれば、
Server# /usr/local/bin/cvsup -g -L 2 /etc/cvsupfile
と実行すれば、今後同じ事が可能だと説明してくれています。
今後はこれを実行して、portsを最新に更新しましょう。

そして、このコマンドを「/etc/daily.local」というファイルに登録しておけば、
今後、更新を自動化できると説明してあります。


ところで、[/etc/cvsupfile]の内容は多くないので、一度確認してみましょう。
Server# less /etc/cvsupfile
*default host=cvsup.jp.FreeBSD.org
*default base=/usr
*default prefix=/usr
*default release=cvs
*default tag=none
*default delete use-rel-suffix

*default tag=.
ports-all
と、「cvsupit」のインストール時に設定したものがほとんどそのまま記録されています。

今後は、ここを書き換えることによって最新に更新したいファイルを代えることが可能です。
興味があれば、Google等で検索して、どういった命令があるのか確認してみてください。



◆番外編:cvsupitを強引に再インストール

ちょっとした番外編…もう一回cvsupitを使用したくなった時、
Hiiro# make install
===> cvsupit-3.1 is marked as broken: Does not build.

…と出ると思います。
すでにパッケージとして登録しているのが第一の問題かも。
削除します。

Server# pkg_info
cvsupit-3.1 CVSup installation and setup front-end package (16.1 / GUI
Server# pkg_delete cvsupit-3.1
Server# make install
===> cvsupit-3.1 is marked as broken: Does not build.

これでも駄目です。あらら…

そこでおもむろにMakefileをエディタで開きます。
Hiiro# vi Makefile

MAINTAINER= jkh@FreeBSD.org
COMMENT= CVSup installation and setup front-end package (16.1 / GUI V3)

#BROKEN= "Does not build"
画面に表示されている「BROKEN= "Dose not build"」をコメントアウトして保存します。

これで「make install」を実行すると、再びシステムメニューが起動します。
この段階で昔の「/etc/cvsupfile」は無くなりますので、注意してください。


なお、この方法は緋色が苦し紛れに編み出した方法です。
問題が起こっても責任は取れませんので、ご了承ください…

…ちなみに、この状態でportsを更新すると、修正した「net/cvsupit/Makefile」もしっかり元通りに直されます。

当然ですが、さすがです。


[一つ上に戻る]

テレワークならECナビ Yahoo 楽天 LINEがデータ消費ゼロで月額500円〜!
無料ホームページ 無料のクレジットカード 海外格安航空券 海外旅行保険が無料! 海外ホテル